﻿#region Namespace References

using System;
using DynConDevCorp.OpenArch.SmartData.Core;
using DynConDevCorp.OpenArch.SmartData.Interfaces;
using DynConDevCorp.OpenArch.SmartData.Interfaces.Attributes;

#endregion

namespace DynConDevCorp.OpenArch.SmartData.NorthWindLoader
{
    public class Product : SmartEntity
    {
        #region Constructors

        public Product()
        {
        }

        public Product(Guid EntityID)
            : base(EntityID)
        {
        }

        #endregion

        #region Public Instance Properties

      
        [AutoField]
        public ISmartField<String> CategoryID { get; private set; }

        [AutoField]
        public ISmartField<String> Discontinued { get; private set; }

        [AutoField]
        [Persist(IsXmlPersistable = true, IsDatabaseField = true, DatabaseFieldName = "ProductID")]
        public ISmartField<String> ProductNumber { get; private set; }

        [AutoField]
        public ISmartField<String> ProductName { get; private set; }

        [AutoField]
        public ISmartField<String> QuantityPerUnit { get; private set; }

        [AutoField]
        public ISmartField<String> ReorderLevel { get; private set; }

        [AutoField]
        public ISmartField<String> SupplierID { get; private set; }

        [AutoField]
        public ISmartField<String> UnitPrice { get; private set; }

        [AutoField]
        public ISmartField<String> UnitsInStock { get; private set; }

        [AutoField]
        public ISmartField<String> UnitsOnOrder { get; private set; }

        #endregion
    }
}